The present invention relates to an output data controller that receives data through a line and outputs the received data to an external output device.
In data output systems where a plurality of personal computers interconnected through a network print out data by a printing device, a data output controller called a print server is interposed between a file server which temporarily archives data connected onto a personal computer or a network and the printing device. It is possible to connect a plurality of printing devices to this print server.
It is possible in a system such as this to print out desirable print information from any personal computer to any printing device connected to the print server. In that case the print data is temporarily stored in the file server and then is transmitted from this file server through the print server to a specified printing device, by means of which the data is printed out.
In a communication operating system (OS) where data transmission and reception are controlled in a network by using a file server and a print server, for example, in NetWare (US Novel Co.), a header file called a banner page is added before data that is transmitted or received. This banner page, as shown in FIG. 8, is constituted by a user name (of print data), a file name, a directory name, a queue name, a file server name, a print server name, a generation tool name, or creation data and time, etc., as attribute data. This banner page is used in the identification in the data transmission and reception control and also is printed out as indicating the head of each print data when printed by a printer.
The banner page and the data (print data) will be deleted from the buffer of the print server and will no longer exist in the network system, if printing is ended.
In the conventional data output controller, when printing errors occur in the printing device, there is the problem that the transmitted data must be again transmitted, because the data has already been deleted from the network.
As a method of solving this problem, there is not a buffer which temporarily stores data in the data output controller but a memory for storing data. However, in that case a method of managing stored data is needed.